Implementing Tuple Space with Threads
نویسندگان
چکیده
The development of efficient and portable parallel programming systems can be a complex and troublesome task. Although there are several portable environments that are meant to be used as a support layer for higher level programming systems, they all provide different features and different levels of functionality to the system programmer. In this paper we report on our experience implementing a tuple space library, called OpenTS, on top of two portable environments: the MPI message passing interface and the Panda virtual machine. We discuss the difficulties encountered when implementing OpenTS on both systems, and how the availability/lack of some features affected the flexibility, elegance, and refinement of the overall tuple space implementation. In particular, we focus on the system support that is required to build the sophisticated OpenTS run-time system module that supports different tuple distribution policies based on programmer annotations. Experimental results of OpenTS collected on a cluster of workstations using Panda and MPI are presented. The comparison of these performance numbers shows the practical impact of both environments on the overall performance of a higher level programming system.
منابع مشابه
Go! – A Logic Programming Language for Implementing Multi-threaded Agents
Go! is a multi-paradigm programming language that is oriented to the needs of programming secure, production quality, agent based applications. It is multi-threaded, strongly typed and higher order (in the functional programming sense). It has relation, function and action procedure definitions. Threads execute action procedures, calling functions and querying relations as need be. Threads in d...
متن کاملCwmwl, a LINDA-based PaaS Fabric for the Cloud
— In this paper we introduce a new Platform-as-aService cloud environment that combines the LINDA coordination language, an in-memory key-value store, with functional programming to facilitate efficient execution of tenant plugins and applications. In the implementation a tuple space plays a central role in introducing deterministic services for basic parallel programming, including message pa...
متن کاملOn the Implementation of an Asymmetric Hyperspace in Linear Memory: Implementing Tuple Spaces
This report sets out the results of an investigation into the distributed implementation of tuple spaces, hence Linda. There are numerous such schemes for implementing distributed tuple spaces, and a selection of these implementations are examined. It is observed that all the implementations have a great deal of similarities. These similarities form the basis for a generalised tuple space imple...
متن کاملDesign and Implementation of an Intrusion-Tolerant Tuple Space
The tuple space coordination model is one of the most interesting communication models for open distributed systems due to its space and time decoupling and its synchronization power. Several works have tried to improve the dependability of tuple spaces. Some have made tuple spaces fault-tolerant while others have focused on security. However, many practical applications in the Internet require...
متن کاملImplementing contract net in tuple space models
Coordination is essential in distributed computing, which involves a group of loosely coupled agents cooperating in order to solve problems in a decentralised fashion. One of the popular approaches of coordination is the generative tuple space based communication, where agents interact via a shared data space. This paper discusses the implementation of Contract Net protocol (CNP) in a number of...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1997